home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / pcl / src-16f.lha / ldb / pager.h < prev    next >
Text File  |  1991-11-06  |  1KB  |  48 lines

  1. /*
  2.  * $Header: pager.h,v 1.2 91/02/19 12:27:47 ch Exp $
  3.  * 
  4.  * pager.h
  5.  */
  6.  
  7. #if !defined(_PAGER_H_INCLUDED_)
  8. #define _PAGER_H_INCLUDED_
  9.  
  10. typedef struct pager_object {
  11.     memory_object_t object;
  12.     memory_object_control_t control;
  13.     memory_object_name_t name;
  14.     vm_size_t size;
  15.     vm_address_t backing_store;
  16.     vm_size_t page_size;
  17.     unsigned long *marked_pages;
  18.     struct pager_object *prev;
  19.     struct pager_object *next;
  20. } pager_object_t;
  21.  
  22. #define NULL_PAGER_OBJECT ((pager_object_t *) 0)
  23.  
  24. #define SYSCALL_OR_LOSE(syscall) {                             \
  25.     kern_return_t kr;                                      \
  26.                                                                \
  27.     if ((kr = (syscall)) != KERN_SUCCESS) {                \
  28.         fprintf(stderr, "ERROR:\n");            \
  29.         fprintf(stderr, "In file \"%s\", line %d:",    \
  30.             __FILE__, __LINE__);                   \
  31.         mach_error("", kr);                            \
  32.         exit(1);                                       \
  33.     }                                                      \
  34. }                           
  35.                            
  36. #define SYSCALL_OR_WARN(syscall) {                             \
  37.     kern_return_t kr;                                      \
  38.                                                                \
  39.     if ((kr = (syscall)) != KERN_SUCCESS) {                \
  40.         fprintf(stderr, "WARNING:\n");            \
  41.         fprintf(stderr, "In file \"%s\", line %d:",    \
  42.             __FILE__, __LINE__);                   \
  43.         mach_error("", kr);                            \
  44.     }                                                      \
  45. }                           
  46.                            
  47. #endif
  48.